The present disclosure relates generally to encoders, and more specifically to systems and methods for incremental encoder loss detection.
Incremental encoders may be used to track linear or rotary motion (e.g., of a motor) and can be used to determine position and velocity (and higher level derivatives) of an encoder shaft. The output signals of incremental rotary encoders may incorporate two channels (e.g., A and B) to indicate rotation of the encoder shaft plus an optional zero or index marker pulse channel (e.g., Z). The A and B channels are typically in quadrature (90 degrees phase shift relative to each other), and they may be used to determine the direction of movement of the encoder shaft. The Z channel is typically a once per revolution pulse that may be used to indicate a home position relative to a single revolution of the encoder.
The loss of the encoder signal(s) due to a broken wire, cable detachment, or other type of signal loss may result in conditions in the attached motor being unknown or inaccurately known, which could reduce the performance of a motor drive. Typically, encoder loss detection schemes may only accurately detect A/B phase errors, but not broken wire scenarios where both quadrature inputs (e.g., A/B) go to the same state. Some detection schemes attempt to detect broken wires by measuring signal pairs to determine when they are no longer held in opposite logical states for a number of logic clock cycles, and ultimately setting an error bit. However, in such schemes, not only is there a delay before making a decision, but these methods typically use a field programmable gate array and/or firmware to aid in the analysis. Thus, the methods may have high component count and cost to implement, and may not even detect when a broken wire condition exists. Thus, it is now recognized that there exists a need for improved encoder loss detection.